/* 
    if(条件语句) ： 条件语句可以是任意表达式，只要表达式运行后的结果转为 boolean 值为true 即可进入条件
      转为false的： null  undefined  false  NaN  0   '' 
*/

// ! 不加花括号{},要执行多句用逗号隔开
let a = 2
if(a > 2) a++ , console.log(a);

/*  
    表达式 === 值 进入case执行语句
    switch(表达式){
        case 值1：
            语句；
            break；
        case 值2:
            语句；
            break；
        default：
            默认处理
    }
*/

//?可以特殊化
// let a1 = 'a'
// switch(true){
//     case a1 == 'a':
//         console.log(a1 , 'a')
//         break;
//     case a1 == 'b':
//         console.log(a1 , 'b')
//         break;
//     default : console.log('default')
// }
console.log('35')

// switch 一般用于状态机
const Right = Symbol('right'), Left = Symbol('left'), Bottom = Symbol('bottom'), Top = Symbol('top')
        var div = document.querySelector("div"), x = 0, y = 0, statu = Right;
        console.log(div, 40)

        setInterval(() => {
            switch (statu) {
                case Right:
                    x++
                    if (x >= 100) statu = Bottom
                    break
                case Left:
                    x--
                    if (x <= 0) statu = Top
                    break
                case Top:
                    y--
                    if (y <= 0) statu = Right
                    break
                case Bottom:
                    y++
                    if (y >= 100) statu = Left
            }
            div.style.left = x + 'px'
            div.style.top = y + 'px'
        }, 16)
